Image forming apparatus, method of storing image forming data, and non-transitory computer-readable recording medium therefor

ABSTRACT

In an image forming apparatus, a controller is configured to perform receiving an operation of one of enabling and disabling a particular storing function of storing image forming data related to an image forming job received through a first interface in a portable storage. When receiving the operation of enabling/disabling the particular storing function, the particular storing function is enabled/disabled. In response to receipt of the image forming job through the first interface in a state where the particular storing function is enabled, the image forming data is stored in the portable storage device connected to the second interface. An image is printed with use of the image forming part in accordance with the image forming data stored in the portable storage. Data different from the image forming data is stored in and/or retrieved from the portable storage device in a state where the particular storing function is disabled.

CROSS-REFERENCE TO RELATED APPLICATIONS

This application is a continuation application of U.S. patentapplication Ser. No. 16/885,474, filed May 28, 2020, and claims priorityunder 35 U.S.C. § 119 from Japanese Patent Application No. 2019-102359filed on May 31, 2019. The entire subject matter of the application isincorporated herein by reference.

BACKGROUND Technical Field

The present disclosures relate to an image forming apparatus configuredto store image forming data in a portable storage device, a method ofstoring image forming data, and a non-transitory computer-readablerecording medium therefor.

Related Art

There have been suggested various types of image forming apparatusesconfigured to receive a job instructing image formation and store imagedata related to the received job in a portable storage device such as aUSB memory. Among such printers, there is known a printer which isconfigured to receive a print job for confidential printing in which anID and/or a password is set, and store print data related to such aprint job in the portable storage device. Then, when the printerreceives a print request by a user operation through an operationalpanel, the printer perform printing of the print data stored in theportable storage device.

SUMMARY

In the printer described above, an external interface to which theportable storage device is connected is used as the external interfacethrough which the print data for the confidential printing istransmitted. However, in such a printer, the external interface is usedfor transmitting only the print data for the confidential printing, anddata other than the print data for confidential printing cannot betransmitted through the external interface. Thus, such a printer is lessconvenient in operation.

According to aspects of the present disclosures, there is provided animage forming apparatus, which includes an image forming part, a firstinterface, a second interface to which a portable storage device isconnectable, and a controller. The controller is configured to perform areceiving process of receiving an operation of one of enabling anddisabling a particular storing function which is a function to storeimage forming data related to an image forming job received through thefirst interface in the portable storage, an enabling process of enablingthe particular storing function in response to the controller receivingthe operation of enabling the particular storing function in thereceiving process, a disabling process of disabling the particularstoring function in response to the controller receiving the operationof disabling the particular storing function in the receiving process,in response to receipt of the image forming job through the firstinterface in a state where the particular storing function is enabled inthe enabling process, a first storing process of storing the imageforming data related to the received image forming job in the portablestorage device connected to the second interface, a first image formingprocess of forming an image with the image forming part in accordancewith the image forming data stored in the portable storage in the firststoring process, a communicating process of at least one of storing, inthe portable storage device connected to the second interface, andretrieving, from the portable storage device connected to the secondinterface, data different from the image forming data related to theimage forming job, which is received through the first interface, in astate where the particular storing function is disabled in the disablingprocess.

According to aspects of the present disclosures, there is provided amethod of storing image forming data employed in an image formingapparatus provided with an image forming part, a first interface, and asecond interface to which a portable storage device is connectable. Themethod includes receiving an operation of one of enabling and disablinga particular storing function which is a function to store image formingdata related to an image forming job received through the firstinterface in the portable storage, enabling the particular storingfunction in response to the controller receiving the operation ofenabling the particular storing function, disabling the particularstoring function in response to the controller receiving the operationof disabling the particular storing function, in response to receipt ofthe image forming job through the first interface in a state where theparticular storing function is enabled, storing the image forming datarelated to the received image forming job in the portable storage deviceconnected to the second interface, forming an image with the imageforming part in accordance with the image forming data stored in theportable storage, and at least one of storing, in the portable storagedevice connected to the second interface, and retrieving, from theportable storage device connected to the second interface, datadifferent from the image forming data related to the image forming jobreceived through the first interface in a state where the particularstoring function is disabled.

According to aspects of the present disclosures, there is provided anon-transitory computer-readable recording medium for an image formingapparatus provided with an image forming part, a first interface, asecond interface to which a portable storage device is connectable, anda controller. The non-transitory computer-readable recording mediumstores instructions which cause, when executed by the controller, theimage forming apparatus to perform a receiving process of receiving anoperation of one of enabling and disabling a particular storing functionwhich is a function to store image forming data related to an imageforming job received through the first interface in the portablestorage, an enabling process of enabling the particular storing functionin response to the controller receiving the operation of enabling theparticular storing function in the receiving process, a disablingprocess of disabling the particular storing function in response to thecontroller receiving the operation of disabling the particular storingfunction in the receiving process, in response to receipt of the imageforming job through the first interface in a state where the particularstoring function is enabled in the enabling process, a first storingprocess of storing the image forming data related to the received imageforming job in the portable storage device connected to the secondinterface, a first image forming process of forming an image with theimage forming part in accordance with the image forming data stored inthe portable storage in the first storing process, and a communicatingprocess of at least one of storing, in the portable storage deviceconnected to the second interface, and retrieving, from the portablestorage device connected to the second interface, data different fromthe image forming data related to the image forming job received throughthe first interface in a state where the particular storing function isdisabled in the disabling process.

BRIEF DESCRIPTION OF THE ACCOMPANYING DRAWINGS

FIG. 1 is a block diagram showing an electrical configuration of an MFP.

FIG. 2 schematically shows data stored in list data.

FIG. 3 shows a setting screen for setting a particular storing function.

FIG. 4 shows a confirmation screen for confirming deletion of data in aRAM.

FIGS. 5-7 show a flowchart illustrating a function on-off process.

FIG. 8 shows a confirmation screen for confirming initialization of aUSB storage.

FIG. 9 shows an error screen for notifying that no USB storage isconnected.

FIG. 10 shows an error screen for notifying shortage of a capacity of aUSB storage.

FIG. 11 shows a confirmation screen for confirming execution ofinitialization of a USB storage.

FIG. 12 shows an error screen for notifying that no USB storage isconnected.

FIG. 13 shows an error screen for notifying that no USB storage isconnected.

FIG. 14 is a flowchart illustrating a receiving process.

FIG. 15 is a flowchart illustrating a storage printing process.

FIG. 16 shows an error screen for notifying that no USB storage isconnected.

FIG. 17 shows an error screen for notifying that no USB storage isconnected.

FIG. 18 shows a selection screen encouraging a user to select a port tobe used in the Scan to USB function.

FIG. 19 is a flowchart illustrating the Scan to USB function process.

DETAILED DESCRIPTION OF THE EMBODIMENT

Referring to FIG. 1, an MFP 1 according to an embodiment of the presentdisclosures will be described.

1. Configuration of MFP

FIG. 1 is a block diagram showing an electric configuration of the MFP1. The MFP 1 is a multifunctional device equipped with a printingfunction, a copying function, a scanner function and a facsimilefunction. As shown in FIG. 1, the MFP 1 includes a ROM 11, a CPU 12, aRAM 13, an image processing circuit 14, a non-volatile memory 15, aprinting part 16, an image reading part 17, a facsimile interface (FAXI/F) 18, a user interface (user I/F) 20, a network interface (networkI/F) 24, a front side USB interface (USB I/F) 26, a rear side USB I/F27, and the like. The above components (i.e., the CPU 12 and the like)are connected to each other through a bus 10. The MFP 1 is furtherprovided with a power source 29 which receives power from a commercialpower supply. The power source 29, which includes a power cord and apower supply circuit (e.g., bridge diodes, a smoothing circuit, etc.),is configured to generate a direct current power source from acommercial power source, and supplies electrical powers to respectivecomponents provided to the MFP 1 through power lines.

The ROM 11 stores a plurality of programs 31 to be executed by the CPU12. The programs 31, for example, cause, when executed, the CPU 12 tointegrally control respective parts of the MFP 1. The CPU 12 isconfigured to execute the program 31 loaded from the ROM 11 to the RAM13, and control the respective parts connected through the bus 10 whiletemporarily storing results of executed processes in the RAM 13. Theprograms 31 include an EWS (Embedded Web Server) program that functionsas a web server. The CPU 12 causes the MFP 1 to function as the webserver by executing the EWS program. It is noted that the storage devicestoring the programs 31 is not limited to the ROM, but may be an HDD, aNVRAM, a flash memory, or a combination thereof.

The non-volatile memory 15 is configured to store and hold data in arewritable manner, and an EEPROM, an NVRAM, a flash memory and/or an HDDmay be employed as the non-volatile memory 15. An authentication DB 33is stored in the non-volatile memory 15. The authentication DB 33 is adatabase in which data of user names and login passwords of respectiveusers who can log in to the MFP 1 are stored in an associated manner.Each user performs a login operation to log in to the MFP 1 using theuser name and login password registered with the authentication DB 33.The MFP 1 according to the present embodiment is configured to allowedition of the authentication DB 33 by the user through a web serverwhich runs as the EWS program is executed by the CPU 12. It is notedthat a method of allowing edition of the authentication DB 33 is notlimited to the method using the web server as described above, but maybe, for example, a method of allowing the edition by the user throughthe user I/F 20.

In the following description, the MFP 1 in which the programs 31 areexecuted by the CPU 12 may be simply referred to by a device name. Forexample, an expression “the MFP 1 receives an input operation withrespect to the touch panel 21” may mean “the MFP 1 accepts an inputoperation with respect to the touch panel 21 as the CPU 12 executes theprograms 31 to control the touch panel 21 so that an input operation bythe user on the touch panel 21 is detected.”

The image processing circuit 14 is a circuit configured to performprocessing, developing and the like of image data relating to a printjob, a scan job and the like. The printing part 16 includes a printengine configured to form an image represented by image data on a sheet(e.g., a printing paper, an OHP sheet or the like), and the print engineaccording to the present embodiment includes an inkjet head. It is notedthat, instead of the inkjet print engine described above, the printengine may be an electrophotographic print engine provided with anexposure device, a photosensitive member and the like, or may be athermal print engine having a thermal head and the like.

The image reading part 17 has a reading sensor configured to read animage on an original. As the reading sensor, a CCD (Charge CoupledDevices), a CIS (Contact Image Sensor) or the like can be adopted. Theimage reading part 17 is configured to move the reading sensor relativeto the original placed on an original table, read an image on theoriginal, and generate image data representing the read image. The FAXI/F 18 is configured to transmit FAX data to other facsimile deviceand/or receive the FAX data from other facsimile device, via a telephoneline.

The user I/F20 includes a touch panel 21 and a keyboard 22. The touchpanel 21 includes, for example, a liquid crystal panel, a light sourcesuch as an LED for irradiating light from a rear surface side of theliquid crystal panel, and a touch sensing film bonded to the surface ofthe liquid crystal panel. The keyboard 22 has a plurality of operationbuttons/keys. The user I/F20 is configured to display, for example,various setting screens, operating states of the device and the like onthe touch panel 21 under control of the CPU 12. In addition, the userI/F20 is configured to transmit signals corresponding to operations, bythe user, on the touch panel 21 and of the keyboard 22 to the CPU 12.According to the present embodiment, the MFP 1 includes the touch panel21 serving as both a displaying part and an operation part. However, theconfiguration of the user I/F20 do not need to be limited to such aconfiguration, but a hardware keyboard, for example, may be provided asthe operation part separately from the displaying part.

A network I/F24 is, for example, a LAN (Local Area Network) I/F, and isconnected to a router 51 via LAN cables (not shown). According to thepresent embodiment, a plurality of PCs 53 are connected to the router51. The user can transmit a print job 61 (an example of an image formingjob) from one of the PCs 53 to the MFP 1 by operating the PC 53. Then,the MFP 1 executes a print process based on the print job 61 receivedfrom the PC 53. The print job processed by the MFP 1 does not need to belimited to the print job received from the PC 53, but may be, forexample, a print job received from a mail server in an e-mail format.Further, the image forming job according to the present embodiment doesnot need to be limited to a print job for instructing printing, but maybe, for example, a FAX job for instructing a FAX transmission. Thenetwork connecting the MFP 1 and the PC 53 does not need to be limitedto a wired LAN, but the network may be, for example, a wireless LAN or aWAN (including the Internet).

The front side USB I/F 26 and the rear side USB I/F27 (examples of thesecond I/F) are interfaces configured to perform communication and powertransfer in accordance with, for example, a USB (Universal Serial Bus)standard. The USB standard does not need to be limited to a particularone, and USB 2. 0 standard, USB 3. 0 standard or the like can be adoptedas the USB standard. Further, the second FF according to the presentembodiment does not need to be limited to the USB I/F, but an interfaceaccording to another standard such as IEEE 1394 standard can be adopted.Alternatively, a radio communication I/Fsuch as the NFC (Near FieldCommunication) or the Bluetooth (registered trademark) can be adopted asthe second FF. In this case, a portable storage device such as aportable terminal device or a hard disk drive may be connected to theMFP 1 by radio (i.e., wirelessly).

The front side USB I/F 26 is connected to a front side USB port 45provided to the front side of the MFP 1. Similarly, the rear USB I/F 27is connected to a rear side USB port 46 provided to the rear side of theMFP 1. The front side USB port 45 and the rear side USB port 46 areconnectors (e.g., receptacles) to which connected devices are to beconnected. The front side USB I/F 26 is configured to execute datainput/output with the device connected to the front side USB port 45under the control of the CPU 12. Similarly, the rear side USB I/F 27 isconfigured to execute data input and output with the device connected tothe rear side USB port 46 under the control of the CPU 12.

As shown in FIG. 1, a USB storage 47 is connected to the rear side USBport 46 as a connected device. The USB storage 47 is, for example, aportable storage device such as a USB memory. For another example, theUSB storage may be a USB flash drive, a USB flash memory or the like.The portable storage device according to the present embodiment does notneed to be limited to a USB memory, but may be an HDD configured to beconnected in accordance with a USB connection, a memory card configuredto communicate in accordance with a USB-connected card reader, a PChaving an HDD, or the like. As connected devices connectable to thefront USB port 45 and/or the rear USB port 46, various connected devicessuch as a keyboard, a fan, a light configured to be connected inaccordance with the USB connection can be employed in addition to orinstead of the above described portable storage devices.

2. Storage Printing Function and Particular Storing Function

The MFP 1 of the present embodiment has a storage printing function anda particular storing function. The MFP 1 is configured to receive asetting of enabling or disabling the storage printing function from, forexample, the web server of the EWS. In addition, the MFP 1 is configuredto store a registration value indicating whether the storage printingfunction is enabled or disabled in the non-volatile memory 15, andmanages ON/OFF of the function. In a case where the storage printingfunction is enabled, when the MFP 1 receives the print job 61 in whichthe job name 63 and the user name 65 are set, as shown in FIG. 1, fromthe PC 53, the MFP 1 determines whether or not the user name 65 of thereceived print job 61 has already been registered in the authenticationDB 33. When the user name 65 has been registered in the authenticationDB 33, the MFP 1 stores the data related to the received print job 61 tothe RAM 13, while when the user name 65 has not been registered in theauthentication DB 33, the MFP 1 executes printing of the print job 61.The method of receiving the setting of enabling or disabling of thestorage printing function is not limited to the method of using the Webserver as described above. As another method, for example, the settingof enabling or disabling of the storage printing function may bereceived from the user I/F20. Alternatively, the print job 61 mayinclude the setting of enabling or disabling of the storage printingfunction.

The print job 61 includes, for example, PJL data and PDL data. The PJLdata is written in PJL (Printer Job Language) and the PDL data iswritten in PDL (Page Description Language). The PJL data is, forexample, data such as commands for causing the MFP 1 to execute an imageforming process and the like. The PDL data is, for example, data of animage used for image formation or data of an image forming instruction.More specifically, the PDL data includes, for example, PS (Post Script)data, PCL (Printer Command Language) data, JPEG (Joint PhotographicExperts Group) data, GDI (Graphic Device Interface) data or the like.

The image processing circuit 14 performs a RIP process to rasterize thePDL data included in the print job 61 under control of the CPU 12, andgenerates rasterized image data 73 (an example of image forming data).The MFP 1 stores the image data 73 generated by the image processingcircuit 14 in the RAM 13. When the MFP 1 stores the image data 73related to the new print job 61 in the RAM 13, the MFP 1 storesinformation related to the print job 61 in the list data 76 in RAM 13.When the storage printing function is enabled, the MFP 1 stores theimage data 73 related to the print job 61 of a user of which user name65 is registered in the authenticated DB 33 in the RAM 13, and updatesthe list data 76. The image forming data according to the presentdisclosures may be rasterized image data or PDL data beforerasterization. The storage destination of the image data 73 and the listdata 76 does not need to be limited to the RAM 13, but may be, forexample, the non-volatile memory 15.

FIG. 2 shows an example of data stored in the list data 76. As shown inFIG. 2, in the list data 76, a job name, a user name, a received dateand time and an image data name are associated with each other andregistered as one record. The MFP 1 adds a new record to the list data76 based on the received information of the print job 61, such as thejob name 63, the user name 65, and the image data 73. It is noted that,by storing the name of the image data 73 in the list data 76, the MFP 1is capable of managing respective records of the list data 76 inassociation with the image data 73 stored in the RAM 13.

When a user name and a password are input through the touch panel 21while a particular authentication window is displayed on the touch panel21, the MFP 1 checks input user name and input password against the username and the password registered in the authentication DB 33 of thenon-volatile memory 15, respectively. When the user name and thepassword coincide with the user name and the password registered in theauthenticated DB 33 as a result of the verification, the MFP 1 allowslogin of the user. The MFP 1 executes printing of the image data 73associated with the user name of the logging-in user from among aplurality of pieces of the image data 73 stored in the RAM 13.Hereinafter, such printing will occasionally be referred to as storageprinting. Further, when the MFP 1 receives the print job 61 from the PC53 in a case where the storage printing function is disabled, the MFP 1starts the printing process without storing the received print job 61 inthe RAM 13.

The authentication DB 33 used for the login authentication is notnecessarily be stored in the non-volatile memory 15. For example, theauthentication DB 33 may be stored in a server external to the MFP 1,and the MFP 1 may perform the authentication process with communicatingwith the server.

The method of storing the print jobs 61 in the MFP 1 does not need to belimited to the method using the above-described authentication DB 33.For example, the printer driver of the PC 53 may set a password to theprint job 61. On the MFP 1 side, when the print job 61 is protected bythe password, the MFP 1 may store the print job 61 in the RAM 13. Then,the MFP 1 may receive user input of selecting the stored print job 61and the password via the touch panel 21, and execute printing when thepassword set to the selected print job 61 and the password input by theuser (i.e., received by the MFP 1) coincide with each other.

The particular storing function is, for example, a function of changinga storage destination of the image data 73 when the storage printingfunction described above is enabled. When the particular storingfunction is enabled, the image data for the print jobs 61 of theabove-described storage printing is stored not in the RAM 13, but in theUSB storage 47. The particular storing function is disabled, forexample, in the initial state, and the particular storing functionbecomes changeable between the enabled state and the disabled stateafter the storage printing function is enabled. When the storageprinting function is disabled, the particular storing function is alsodisabled, for example, in conjunction with disablement of the storageprinting function. It is noted that the particular storing function maybe configured to be switchable between the enabled state and thedisabled state, independently of the state of the storage printingfunction.

The MFP 1 executes setting of enabling or disabling of the particularstoring function based on, for example, the operational input withrespect to the touch panel 21, as shown in FIG. 3. Alternatively oroptionally, the Web server may be configured to receive a user operationof enabling or disabling of the particular storing function. The MFP 1is configured to manage ON and OFF of the particular storing function bystoring the registration value indicating enabling or disabling of theparticular storing function in the non-volatile memory 15.

In a case where the particular storing function is enabled, when the MFP1 receives the print job 61, in which the job name 63 and the user name65 are set, from the PC 53, the MFP 1 determines whether or not the username 65 set to the received print job 61 is registered in theauthentication DB 33. When the user name 65 set to the print job 61 isregistered in the authentication DB 33, the MFP1 rasterizes PDL dataincluded in the received print job 61 to generate the image data 74 andstores the generated image data 74 in the USB storage 47. When the MFP 1newly stores the image data 74 for the new print job 61, the MFP 1stores information related to the print job 61 in the list data 77stored in the USB storage 47. The list data 77 is, for example, datahaving the same format as the list data 76.

It is noted that the data in the RAM 13 attached to MFP1 is difficult tobe accessed externally. In contrast, browsing the data in the USBstorage 4 is possible by detaching the USB storage 47 from the MFP 1 andconnecting the same to the PC or the like. In this regard, the MFP 1according to the present embodiment is configured to encrypt the imagedata 74 and the list data 77 to be stored in the USB storage 47 when theparticular storing function is enabled. As will be described later, theMFP 1 generates a common key 78 to be used for encryption when theparticular storing function is enabled, and stores the generated commonkey 78 in the non-volatile memory 15 (S30 of FIG. 6). A method ofgenerating the common key 78 will be described later. It is noted that astorage destination of the common key 78 is not limited to thenon-volatile memory 15, but may be, for example, a RAM 13.

The MFP 1 encrypts the image data 74 using the common key 78 and storesthe encrypted image data 74 in the USB storage 47. When the MFP 1 is toperform the storage printing, the MFP 1 retrieves the image data 74 fromthe USB storage 47, decrypts the same using the common key 78 andexecutes printing. Further, upon receiving a new print job 61, the MFP 1retrieves the list data 77 from the USB storage 47, decrypts the listdata 77 using the common key 78, and adds the information regarding thenew print job 61 to the decrypted list data 77. Thereafter, the MFP 1encrypts the updated list data 77 using the common key 78 and stores theencrypted list data 77 in the USB storage 47. This is advantageous inview of security since this makes it very difficult to decrypt the imagedata 74 and the list data 77 stored in the USB storage 47.

Further, in the MFP 1 according to the present disclosures, the USB portused in the particular storing function can be determined by selectingone of two ports, i.e., a front side USB port 45 and a rear side USBport 46. As will be described later, the MFP 1 sets the USB port to beused in the particular storing function based on the user operation ofthe touch panel 21 when the particular storing function is enabled (S13in FIG. 5). For example, the MFP 1 manages a port to be used by storinga registration value indicating the setting of the USB port to be usedin the particular storing function in the non-volatile memory 15. Then,the MFP 1 stores the image data 74 and the list data 77 in the USBstorage 47 connected to the set USB port. The MFP 1 according to thepresent embodiment controls the USB port set to be used in theparticular storing function as a dedicated port of the particularstoring function. For example, when the rear side USB port 46 is set asthe USB port to be used in the particular storing function, the MFP 1executes control for storing only the image data 74 and the list data 77in the USB storage 47 connected to the rear side USB port 46. Even if adevice (e.g., a keyboard) other than the storage device is connected tothe rear USB port 46, the MFP 1 does not control the connected device tobe usable.

3. USB to Scan Function and Direct Print Function

The MFP 1 according to the present embodiment has a Scan to USB functionwhich is a function of storing scan data in the USB storage 47. In astate where the Scan to USB function is enabled, when, for example, thescan function is started as the user operates the touch panel 21, theMFP 1 reads an image on an original placed on the document table withthe image reading part 17 and stores generated scan data in the USBstorage 47.

The MFP 1 according to the present embodiment has a Direct Printfunction which is a function of retrieving image data stored in the USBstorage 47 and printing the image data. In a case where the Direct Printfunction is enabled, when the USB storage 47 is connected to the rearside USB port 46, the MFP 1 displays a list of image data stored in theUSB storage 47 on the touch panel 21.

When the user selects one of a plurality of pieces of the image datadisplayed on the touch panel 21, the MFP 1 retrieves the image data,which is selected from the list, from the USB storage 47, and prints theimage data with the printer 16. Thus, the user can print the image datain the USB storage 47 simply by connecting the USB storage 47 andoperating the touch panel 21. As described above, the MFP 1 isconfigured to set the dedicated USB port to be used in the particularstorage function. Therefore, when, for example, the rear side USB port46 is set to be used in the particular storing function, the USB to Scanfunction and the Direct Print function can be executed using theremaining port, that is, the front side USB port 45. It is noted thatthe MFP 1 may be configured to execute control in which the USB portused in the particular storing function is shared as a USB port that canalso be used in the USB to Scan function or the Direct Print function,instead of controlling the USB port as the dedicated port.

4. Particular Storing Function Enabling/Disabling Process

Next, operations of the MFP 1 according to the present embodiment willbe described referring to FIGS. 5 to 7. In the following description, anoperation when the particular storing function is enabled or disabled ina state where the storage printing function is being enabled will bedescribed. FIGS. 5 and 6 show a flow of a process of enabling theparticular storing function, while FIG. 7 shows a flow of a process ofdisabling the particular storing function. The MFP 1 displays a settingwindow 81 (see FIG. 3) for receiving whether to enable or disable theparticular storing function in accordance with the user operation, forexample, on the touch panel 21, and starts the function on/off processshown in FIGS. 5 to 7. It is noted that a timing at which the functionon/off processing is started does not need to be limited to the timingat which the setting screen 81 is displayed. For example, the MFP 1 maystart the function on/off process shown in FIGS. 5 to 7 after the MFP 1is powered on and the system is started as the program 31 is executed bythe CPU 12.

It should be noted that the flowcharts in this specification basicallyshow processes of the CPU 12 according to instructions described in theprograms 31. That is, the processes such as “determination”,“reception”, “acceptance”, “control”, “setting” and the like in thefollowing description represent processes of the CPU 12. It should benoted that the processes of the CPU 12 include control of hardware.

First, in S11 of FIG. 5, the CPU 12 of the MFP 1 receives a useroperation to enable or disable the particular storing function. The CPU12 displays the setting window 81 shown in FIG. 3 on the touch panel 21in response to, for example, a particular user operation with respect tothe touch panel 21. As shown in FIG. 3, the CPU 12 displays an offbutton 83 for disabling the particular storing function, a rearselection button 84 and a front selection button 85 on the settingwindow 81.

When detecting an operation of pressing the off button 83 (S11:NO), theCPU 12 executes subsequent processes in S31 and subsequent steps in FIG.7. When detecting an operation of pressing one of the rear selectionbutton 84 and the front selection button 85, the CPU 12 makes anaffirmative determination (S11: YES), and executes processes in S13 andsubsequent steps in FIGS. 5 and 6.

4-1. Enabling Process

In S13, the CPU 12 sets the USB port corresponding to the buttonselected in S11 as the USB port to be used in the particular storingfunction. When detecting depression of the rear selection buttons 84 inS11, the CPU 12 executes a process of setting the rear side USB port 46to the USB port to be used in the particular storing function in S13.Similarly, when detecting depression of the front selection buttons 85in S11, the CPU 12 executes a process of setting the front side USB port45 to the USB port to be used in the particular storing function in S13.

It is noted that, in S11, the CPU 12 may limit the operable buttonsaccording to whether the particular storing function is enabled ordisabled. For example, when the particular storing function is enabled,the CPU 12 may be configured to receive only the operation of the offbutton 83 and invalidate the rear selection button 84 or the frontselection button 85 (i.e., the CPU 12 may be configured not to detectthe operation of the rear selection button 84 or the front selectionbutton 85). That is, when the particular storing function is beingenabled, the CPU 12 may receive only the operation, on the settingscreen 81, to disable the particular storing function. Similarly, whenthe particular storing function is being disabled, the CPU 12 mayreceive only the operation, on the setting screen 81, to enable theparticular storing function (i.e., the touching operation on the rearselection button 84 or the front selection button 85) with invalidatingthe off button 83.

After setting the USB port in S13, the CPU 12 determines whether thereremains unprinted image data 73 in the RAM 13 (S15). As described above,the MFP 1 stores the image data 73 of the received print job 61 in theRAM 13 when the storage printing function is enabled and the particularstoring function is disabled, while the CPU 12 stores the image data 74in the USB storage 47 when the storage printing function is enabled.Therefore, the CPU 12 determines, in S15, whether there remainsunprinted image data 73 in the RAM 13 prior to enabling of theparticular storing function.

The CPU 12 determines whether there remains unprinted image data 73based on the list data 76 or the image data 73 stored in the RAM 13.When it is determined that there remains unprinted image data 73 (S15:YES), the CPU 12 displays a confirmation screen through which the useris asked whether or not to delete the image data 73 in the RAM 13 (S17).As shown in FIG. 4, the CPU 12 displays a confirmation screen 90indicating a message 87 to ask the user to confirm enabling of thefunction and deleting of the data in the RAM 13, the OK button 88, andthe cancel button 89 on the touch panel 21.

Next, in S19, the CPU 12 determines whether the OK button 88 is pressedon the confirmation screen 90 which is displayed in S17. When the CPU 12detects that the cancel button 89 on the confirmation screen 90 ispressed (S19: NO), the CPU 12 terminates the function on/off processshown in FIGS. 5 to 7. In this case, the CPU 12 does not enable theparticular storing function, but maintains a disabled state of theparticular storing function.

When the CPU 12 detects that the OK button 88 of the confirmation screen90 is pressed (S19 : Yes), the CPU 12 deletes the image data 73 in theRAM 13 (S21). The CPU 12 also deletes the list data 76 in the RAM 13.That is, the CPU 12 deletes data related to the storage printingfunction from among pieces of the data stored in the RAM 13.

It is noted that, when the particular storing function is enabled, theCPU 12 may move the image data 73 and the list data 76 in the RAM 13 tothe USB storage 47 which is to be used after the particular storingfunction is enabled instead of deleting the same. That is, the CPU 12may move the image data 73 or the like that has not been printed to theUSB storage 47, and process and print the same as the image data 74 orthe list data 77 after the particular storing function is enabled. Inthis case, the CPU 12 may store the image data 73 and the list data 76in the USB storage 47 after encrypting the same.

The CPU 12 executes S22 after executing S21. Further, when the CPU 12determines that there is no unprinted image data 73 in the RAM 13 (S15:NO), the CPU 12 skips S1-S21 and executes S22. In S22, the CPU 12determines whether the USB storage 47 is connected to the USB port whichis set as the port to be used for the particular storing function inS13, that is, the USB port selected in S11.

When detecting that the USB storage 47 is connected to the USB portswhich is set to be used in the particular storing function (S22: Yes),the CPU 12 displays a confirmation screen indicating that initializationof the USB storage 47 is performed (S23). As shown in FIG. 8, the CPU 12displays, on the touch panel 21, a confirmation screen 95 showing amessage 91 indicating that all the data in the USB storage 47 is deletedand inquiring whether the user wants enabling of the particular storingfunction, the OK button 93 and the cancel button 94.

When the CPU 22 detects that the USB storage 47 is not connected (S22:NO), the CPU 12 displays an error screen indicating that a USB storage47 is not connected (S24). As shown in FIG. 9, the CPU 12 displays anerror screen 99 which shows a message 97 encouraging the user to inserta USB storage 47 and a close button 98, on the touch panel 21. As aresult, the user is caused to recognize that no USB storage 47 iscurrently connected to the USB port selected in S11. When detecting thatthe close button 98 on the error screen 99 is pressed, the CPU 12extinguishes the error screen 99 from the touch panel 21 and terminatesthe function on/off process shown in FIGS. 5 to 7.

After execution of S23, the CPU 12 determines whether the OK button 93of the confirming screen 95 (see FIG. 8) is pressed (S25 in FIG. 6).When detecting that the OK button 93 is pressed (S25: YES), the CPU 12executes S26. When detecting that the cancel button 94 is pressed (S25:NO), the CPU 12 terminates the processes shown in FIGS. 5 to 7.Therefore, when the user does not intend to delete the data in the USBstorage 47, the user can temporarily suspend the enablement of theparticular storing function and perform an appropriate operation such astransferring of the data from the USB storage 47 to another device.

In S26, the CPU 12 determines whether the storage capacity of the USBstorage 47 to be used in the particular storing function is equal to orlarger than a particular storage capacity. When the storage capacity ofthe USB storage 47 to be used for the particular storing function issmall, if the data amount of the image data 74 to be stored in the USBstorage 47 increases, there may occur a case where the image data 74cannot be stored completely in the USB storage 47. Further, when thestorage capacity of the USB storage 47 is small, the number of times ofwriting or reading per unit storage area of the USB storage 47increases, and the possibility of causing a failure of the USB storage47 increases. Therefore, the MFP 1 of the present embodiment isconfigured to enable the particular storing function only when thestorage capacity of the USB storage 47 is equal to or larger than theparticular storage capacity. In this regard, the particular storagecapacity referred to in the determination of S26 is a capacitysufficient for storing a plurality of pieces of image data 74 or acapacity sufficient for reducing the frequency of writing or reading perunit storage area, and the amount is, for example, 8 GB (gigabytes).

When the CPU 12 determines that the storage capacity is equal to orlarger than the particular storage capacity (S26: Yes), the CPU 12executes S27. When the CPU 12 determines that the storage capacity isless than the particular storage capacity (S26: NO), the CPU 12 displaysan error screen indicating shortage of the storage capacity (S28). Asshown in FIG. 10, the CPU 12 displays, on the touch panel 21, an errorscreen 103 showing a message 101 indicating that the storage capacity ofthe USB storage 47 is too small and a USB storage 47 having a particularstorage capacity (e.g., 8 GB) or more should be used, and a close button102. This causes the user to recognize that the capacity of the USBstorage 47 is insufficient. When detecting that the close button 102 onthe error screen 103 is pressed, the CPU 12 extinguishes the errorscreen 103 from the touch panel 21 and terminates the process shown inFIGS. 5 to 7.

In S27, the CPU 12 initializes the USB storage 47. For example, when theCPU 12 is capable of detecting a data format of the USB storage 47, theCPU 12 deletes all the data stored in the USB storage 47. When the CPU12 is unable to detect the data format of the USB storage 47, the CPU 12deletes the data stored therein by formatting the storage area of theUSB storage 47 into a format enabling the USB storage 47 to store theimage data 74 therein.

Next, the CPU 12 stores, in the non-volatile memory 15, the registrationvalue indicating that the particular storing function is enabled (S29).Then, the MFP 1 is brought into a condition in which the particularstoring function is enabled. Next, the CPU 12 generates the common key78 (S30). As described above, the common key 78 is used for encryptingand decrypting the image data 74 and the list data 77 stored in the USBstorage 47. The CPU 12 activates a random number generation module forgenerating a random number and a key generation module for generatingthe common key 78 by executing, for example, a particular programincluded in the programs 31. The key generation module generates thecommon key 78 using the random number, which is generated by the randomnumber generation module, and a function of generating the common key78. Therefore, the MFP 1 according to the present embodiment newlygenerates the common key 78 to be used for encryption every time theparticular storing function is enabled. The CPU 12 stores the generatedcommon key 78 in the non-volatile memory 15 and terminates the processshown in FIGS. 5 to 7.

The method and the processes for encrypting the image data 74 and thelist data 77 should not necessarily be limited to those described above.Further, the CPU 12 may store the image data 74 or the like in the USBstorage 47 without encrypting the same. That is, the CPU 12 may store,in the USB storage 47, the image data 74 and the list data 77 by, forexample, setting passwords to them in order to enhance security thereof

4-2. Disabling Process

Next, a process shown in FIG. 7 will be described. When the CPU 12detects that the off button 83 on the setting window 81 shown in FIG. 3is pressed (S11: NO), the CPU 12 executes steps S31 onwards in FIG. 7.In S31, the CPU 12 determines whether the USB storage 47 is connected tothe USB port which is being used in the particular storing function(i.e., the USB port set in S13 of FIG. 5). When detecting that the USBstorage 47 is connected (S31: YES), the CPU 12 displays a confirmationwindow requesting the user to confirm that that the USB storage 47 is tobe initialized (S32).

As shown in FIG. 11, the CPU 12 displays, on the touch panel 21, aconfirmation screen 109 showing a message 105 indicating that all thedata in the USB storage 47 will be deleted and the function is disabled,an OK button 106 and a cancel button 107 (S32). Next, the CPU 12determines whether the OK button 106 has been pressed (S33). Whendetecting that the OK button 106 is pressed (S33: YES), the CPU 12initializes the USB storage 47 by deleting all the data, including theimage data 74 and the list data 77, in the USB storage 47 (S34). Then,the CPU 12 stores, in the non-volatile memory 15, a registration valueindicating that the particular storing function has been disabled (S35).As a result, the MFP 1 is brought into a condition in which theparticular storing function is disabled. Then, the CPU 12 terminates theprocess shown in FIGS. 5 to 7.

It is noted that the CPU 12 may delete, in S34, only the image data 74and the list data 77 from the data stored in the USB storage 47.Further, the CPU 12 may be configured not to delete the image data 74 orthe list data 77 in the USB storage 47 but move the same to the RAM 13when the particular storing function is disabled. Then, the CPU 12 mayprocess the image data 74 and the list data 77 as the image data 73 andthe list data 76 after being disabled, and perform printing or the like.

When detecting that no USB storage 47 is connected (S31: NO), the CPU 12displays a confirmation screen 113 on the touch panel 21 (S36). As shownin FIG. 12, the CPU 12 displays a message 111 indicating that no USBstorage 47 is connected to the USB storage 47 on the confirmation screen113. Further, the CPU 12 also displays the message 111 indicating that,even if the USB storage 47 is connected again and enable the particularstoring function after the particular storing function was disabled,printing cannot be performed. It is because the MFP 1 according to thepresent embodiment newly generates the common key 78 to be used fordecryption every time the particular storing function is enabled (S30 ofFIG. 6). The CPU 12 also displays a message inquiring whether or not todisable the particular storing function in the message 111. In addition,the CPU 12 displays an OK button 115 and a cancel button 116 on theconfirmation screen 113. After executing S36, the CPU 12 executes S33.

In S33, the CPU 12 determines whether the OK button 115 is pressed(S33). When the CPU 12 detects that the OK button 115 is pressed (S33:YES), since the USB storage 47 is not connected to the USB storage 47,the CPU 12 does not execute the initialization process of the data inS34, and executes setting of the flag value in S35. When the CPU 12detects that the cancel button 116 is pressed (S33: NO), the CPU 12terminates the process shown in FIGS. 5 to 7. In this manner, the CPU 12performs enabling or disabling of the particular storage function.

5. Receiving Process

Next, a receiving process of the print job 61 in the storage printingfunction and the particular storing function will be described. FIG. 14shows a flow of a receiving process when the print job 61 to besubjected to the storage printing is received. The print job 61 to besubjected to the storage printing is a print job 61 which is differentfrom a normal print job. It is noted that, when the normal print job istransmitted from the PC 53 to the network I/F24, printing is started inaccordance with the print job upon reception of the same. The print job61 subjected to the storage printing is a print job which is temporarilystored in the RAM 13 or the USB storage 47 when the above describedstorage printing function or the particular storing function is enabled.More specifically, the print job 61 is a print job to which the job name63 and the user name 65 shown in FIG. 1 are set. When, for example, thestorage printing function is enabled, the MFP 1 starts the receivingprocess shown in FIG. 14.

First, in S41 of FIG. 14, the CPU 12 determines whether the print job 61to be subjected to the storage printing has been received via thenetwork I/F24. It is noted that the CPU 12 keeps repeatedly executingthe determination process of S41 until (S41: NO) the print job 61 isreceived. Upon receiving the print job 61 (S41: YES), the CPU 12determines whether the particular storing function is enabled (S43).

As described above, the CPU 12 stores the flag value representing theenabling/disabling of the particular storing function in thenon-volatile memory 15 in response to switching of enabling/disabling ofthe particular storing function. In S43, the CPU 12 can determinewhether the particular storing function is enabled or disabled based onthe flag value stored in the non-volatile memory 15. When the CPU 12determines that the particular storing function is disabled (S43: NO),the CPU 12 cause the image processing circuit 14 to execute the RIPprocess (S45).

The image processing circuit 14 rasterizes, for example, PDL dataincluded in the print job 61 to generate image data 73 (S45) which isthe raster data. The CPU 12 updates the list data 76 stored in the RAM13 (S47). The CPU 12 adds information on newly received print job 61 tothe list data 76 based on the job name 63 and/or the user name 65 set tothe print job 61 of which reception is detected in S41 (see FIG. 1),reception date and time and the like (S47).

Next, the CPU 12 stores the generated image data 73 in the RAM 13 (S49).At this stage, the CPU 12 may store the image data 73 in the RAM 13after compressing the image data 73 to reduce the amount of data. Afterexecuting S49, the CPU 12 terminates the receiving process shown in FIG.14. As a result, the information regarding the print jobs 61, which isreceived with the storage printing function being enabled and theparticular storing function being disabled, is added to the list data76, and the image data 73 is stored in the RAM 13.

When it is determined that the particular storing function is enabled(S43: YES), the CPU 12 determines whether the USB storage 47 isconnected to the MFP 1 (S51). Specifically, the CPU 12 determineswhether the USB storage 47 is connected to the USB port selected in S11of FIG. 5, i.e., the front side USB port 45 or the rear side USB port46.

When the CPU 12 determines that the USB storage 47 is connected to theUSB storage 47 (S51: YES), the CPU 12 rasterizes the PDL data includedin the print job 61 to generate the image data 74 (S52), as is done inS45. After compressing the rasterized image data 74, the CPU 12 encryptsthe compressed image data 74 (S53). The CPU 12 encrypts the image data74 using the common key 78, which is newly generated when the particularstoring function is enabled (S30 of FIG. 6). Then, the CPU 12 stores theencrypted image data 74 in the USB storage 47 (S54).

Next, the CPU 12 retrieves the list data 77 from the USB storage 47 anddecrypts the same (S55). The CPU 12 is configured, for example, toretrieve the list data 77 and temporarily store the same in the RAM 13,and decrypts the list data 77 in the RAM 12 using the common key 78. Asin S47, the CPU 12 adds the information (e.g., a job name 63, etc.) ofthe print job 61, reception of which is detected in S41, to thedecrypted list data 77 to update the list data 77 (S56). Then, the CPU12 re-encrypts the updated list data 77 using the common key 78, andstores the re-encrypted list data 77 in the USB storage 47. As a result,the information regarding the newly received print job 61 is added tothe list data 77, and the new image data 73 is stored in the USB storage47. After executing S57, the CPU 12 terminates the receiving processshown in FIG. 14. It is noted that the CPU 12 may be configured to storethe list data 77 in the USB storage 47 in a compressed manner in orderto reduce the amount of the data to be stored (i.e., in order to savethe capacity of the USB storage 47).

When it is determined that no USB storage 47 is connected to the MFP 1(S51: NO), the CPU 12 displays an error screen indicating that no USBstorage 47 is connected (S59). As shown in FIG. 13, the CPU 12 displays,on the touch panel 21, an error screen 119 showing a message 117indicating that a print job cannot be stored since no USB storage 47 isconnected to the MFP 1. The CPU 12 keeps displaying the error screen 119on the touch panel 21 until, for example, the close button 121 of theerror screen 119 is touched. According to a such configuration, a statewhere the user is caused to recognize that the print job cannot bestored so that the user can execute appropriate measures, e.g., anoperation to connect a USB storage 47. After executing S59, the CPU 12terminates the process shown in FIG. 14.

It is noted that the CPU 12 may be configured to discard, in S59, theprint job 61 which is planned to be stored in the USB storage 47 butstore the same in the RAM 13 and receive the user's instruction.Alternatively, the CPU 12 may be configured to cause the PC 53, which isa transmission source of the print job 61, to display the error screen119. That is, the CPU 12 may be configured, for example, to communicatewith a printer driver installed in the PC 53 and causes the printerdriver of the PC 53 to display the error screen 119 on a screen of thePC 53.

6. Storage Printing Process

Next, the storage printing process will be described referring to aflowchart shown in FIG. 15. When the storage printing function has beenenabled, the MFP1 starts the storage printing process shown in FIG. 15.First, the CPU 12 determines whether to start the storage printingprocess (S61 of FIG. 15). As described above, the MFP 1 according to thepresent embodiment starts the storage printing with being triggered bysuccess of login authentication through the touch panel 21. Therefore,when the CPU 12 determines that the login operation has been performedin response to the operation with respect to the touch panel 21 and thelogin authorization has been performed successfully (S61: YES), the CPU12 performs S63 and the following steps. It is noted that the CPU12repeatedly executes the determination process of S61 until (S61: NO) itis determined that the login authorization has been performedsuccessfully. It should be noted that the determination condition of S61should not necessarily be limited to the success condition of the loginauthentication. For example, the CPU 12 may be configured to determinewhether to execute the processes of S63 and subsequent steps based on aparticular operation (e.g., an operation of selecting a print job 61)through the touch panel 21.

Next, in S63, the CPU 12 determines whether the particular storingfunction is enabled. As in S43 (FIG. 14), the CPU 12 determines whetherthe particular storing function is enabled or disabled based on the flagvalue stored in the non-volatile memory 15 (S63). When the CPU 12determines that the particular storing function is disabled (S63: NO),the CPU 12 retrieves the list data 76 (see FIG. 1) from the RAM 13(S65). As described above, when the storage printing function is enabledwhile the particular storing function is disabled, the CPU 12 stores thelist data 76 in the RAM 13 without encrypting the same. Accordingly, itis unnecessary for the CPU 12 to decrypt the list data 76 retrieved inS65, thereby the processing time for the retrieval being shortened.After executing S65, the CPU 12 executes S67.

When the CPU 12 determines that the particular storing function isenabled (S63: YES), the CPU 12 determines whether or not the USB storage47 is connected (S69). Specifically, according to the presentembodiment, the CPU 12 determines whether or not the USB storage 47 isconnected to the USB port (the front side USB port 45 or the rear sideUSB port 46, which is set to be used in the particular storing function)selected in S11 of FIG. 5.

When the CPU 12 determines that the USB storage 47 is connected (S69:YES), the CPU 12 retrieves the list data 77 (see FIG. 1) from the USBstorage 47 (S71). When the particular storing function is enabled, theCPU 12 encrypts the list data 77 and stores the same in the USB storage47. Therefore, in S71, the CPU 12 decrypts the list data 77 retrievedfrom the USB storage 47. The CPU 12 retrieves the list data 77 from USBstorage 47, temporarily stores the same in the RAM 13 and decrypts thelist data 77 stored in the RAM 13 using the common key 78 generated inS30 in FIG. 6. The CPU 12 develops the decrypted list data 77 in the RAM13 (S73), and then executes S67.

When the CPU 12 determines that no USB storage 47 is connected (S69:NO), the CPU 12 displays an error screen (S75). As shown in FIG. 16, theCPU 12 displays, on the touch panel 21, an error screen 125 showing amessage 123 indicating that the image data 74 cannot be retrieved fromthe USB storage 47 since no USB storage 47 is connected to the MFP 1.The CPU 12 may be configured to keep displaying the error screen 125 onthe touch panel 21 until, for example, the close button 127 of the errorscreen 125 is touched. As a result, the user is caused to recognize thatno USB storage 47 is connected, and the user can execute appropriatemeasures such as connecting of the USB storage 47. After executing S75,the CPU 12 terminates the accumulated print process shown in FIG. 16.

In S67, the CPU 12 determines whether there exists the print job 61associated with a name of the user whose login is detected in S61, thatis, the print job 61 associated with the name of the currentlylogging-in user (i.e., a job record including the user name who iscurrently logging in) in the list data (list data 76 when S65 isexecuted and list data 77 when S73 is executed). When the CPU 12determines that no print job 61 associated with the name of thelogging-in user exists in the list data 76 or 77 (S67: NO), the CPU 12terminates the process shown in FIG. 15. In such a case, since no printjob 61 of the logging-in user is stored, no print job 61 to be printedexists.

When it is determined that there exists the print job 61 of thelogging-in user the list data 76 and 77 (S67: YES), the CPU 12determines, as in S63, whether the particular storing function isenabled (S77). When the CPU 12 determines that the particular storingfunction is disabled (S77: NO), the CPU 12 selects the print job 61 ofthe logging-in user from among the print jobs 61 in the list data 76,and retrieves the image data 73 corresponding to the selected print job61 from the RAM 13. The retrieved image data 73 is unencrypted data. InS79, the CPU 12 performs printing with use of the printing unit 16 inaccordance with the image data 73.

In S81, the CPU 12 deletes the data related to printing performed instep S79. That is, in S81, the CPU 12 deletes, for example, the imagedata 73 based on which printing has been performed or temporary datagenerated in the printing process from the RAM 13. Then, the CPU 12updates the list data 76 by deleting information (i.e., the record)related to the print job 61 which has been executed from the list data76 (S83).

It is noted that, in the present embodiment, the CPU 12 is configured toperform the deletion process (S81) and the updating process (S83) everytime printing is executed in S79. However, the CPU 12 may be configurednot to perform such processes (S81 and/or S83). For example, the CPU 12may be configured to collectively delete the image data 73 of theexecuted print jobs 61 and update the list data 76 after performing allthe print jobs 61 of the logging-in user.

After executing S83, the CPU 12 executes S67 again to determine whetherthere exists a print job 61 of the logging-in user in the updated listdata 76, that is, whether there exists another print job 61 for whichthe storage printing has not been completed. When there remain printjobs 61 of the logging-in user (S67: YES), the CPU 12 executes theprinting process and updates the list data 76 by executing S77 andsubsequent steps. When the storage printing of all the print jobs 61 ofthe logging-in user has been completed (S67: NO), the CPU 12 terminatesthe storage printing process shown in FIG. 15.

When the CPU 12 determines that the particular storing function isenabled (S77: YES), the CPU 12 selects the print job 61 of thelogging-in user from among the print jobs 61 in the list data 77, andretrieves the image data 74 corresponding to the print job 61 from theUSB storage 47 (S85). Since the image data 74 is encrypted, the CPU 12decrypts the retrieved image data 74 (S85), and executes printing inaccordance with the decrypted image data 74 (S79). The CPU 12 deletesthe image data 74 which has been printed in S79 (S81) and updates thelist data 77 (S83), and then executes the determining process in S67, asin a manner similar to a case where the particular storing function isdisabled. The CPU 12 repeatedly executes the processes of S77 to S85until there are no print jobs 61 of the logging-in user in the list data77.

7. Process When Functions Other Than Storage Printing are Executed

Next, a process of storing image data in the USB storage 47 whenfunctions other than the storage printing are performed will bedescribed. In the following description, a Scan to USB function will bedescribed as one of such functions in which the image data is stored inthe USB storage 47.

FIG. 19 is a flowchart illustrating the Scan to USB process. Initially,the CPU 12 displays a start button for executing the Scan to USBfunction on the touch panel 21. Thereafter, the CPU 12 starts the Scanto USB process shown in FIG. 19. As functions of storing the image datain the USB storage 47 other than the storage storing function, afunction of storing FAX data, which is an example of the image data andreceived via the FAX I/F 18, in the USB storage 47 may be employedoptionally or alternatively to the Scan to USB function. When thefunction of storing the FAX data is employed as the function of storingthe image data to the USB storage 47, the FAX data may be stored in theUSB storage 47 with checking whether the USB storage 47 is connected tothe MFP 1, as in a case of the Scan to USB function.

First, in S91 of FIG. 19, the CPU 12 determines whether the start button(not shown) for starting the Scan to USB process is pressed. The CPU 12repeatedly executes the determination process of S91 until the startbutton is pressed (S91: NO).

When detecting that the start button is pressed (S91: YES), the CPU 12determines whether the USB storage 47 is connected to the MFP 1 (S93).When the CPU 12 determines that the USB storage 47 is connected to atleast one of the front side USB port 45 and the rear side USB port 46,the CPU 12 makes an affirmative decision in S93 (S93: YES). When the CPU12 determines that the USB storage 47 is not connected to the front sideUSB port 45 or the rear side USB port 46, the CPU 12 makes a negativedecision in S93 (S93: NO).

When the CPU 12 determines that the USB storage 47 is not connected tothe front side USB port 45 or the rear side USB port 46 (S93: NO), theCPU 12 displays an error screen (S95). In this instance, since no USBstorage 47 is connected to the MFP 1, as shown in FIG. 17, the CPU 12displays, on the touch panel 21, an error screen 131 showing a message129 indicating that a USB storage 47 that can be used in the Scan to USBfunction is not connected. The CPU 12 keeps displaying the error screen131 on the touch panel 21 until, for example, a close button 135 toclose the error screen 131 is touched. As a result, the user will beprompted to connect the USB storage 47 to the MFP 1. After executingS95, the CPU 12 terminates the process shown in FIG. 19.

When the CPU 12 determines that the USB storage 47 is connected to atleast one of the front side USB port 45 and the rear side USB port 46(S93: YES), the CPU 12 determines whether the particular storingfunction is enabled (S97). Then, the CPU 12 determines whether theparticular storing function is enabled or disabled based on the flagvalue stored in the non-volatile memory 15. When the particular storingfunction is enabled (S97: YES), the CPU 12 executes S99, while when theparticular storing function is disabled (S97: NO), the CPU 12 executesS101.

In S101, the CPU 12 determines whether multiple USB storages 47 areconnected to the MFP 1. As mentioned above, the MFP 1 according to thepresent embodiment has two USB ports, the front side USB port 45 and therear side USB port 46. When the particular storage function is disabled,both the two USB ports can be used in the Scan to USB function.Therefore, in S101, the CPU 12 determines whether two USB storages 47are connected to the two USB ports, respectively.

When detecting that two USB storages 47 are connected to the two USBports, respectively (S101: YES), the CPU 12 displays a selection windowfor prompting the user to select one of the USB ports (S103). In S103,the CPU 12 displays a selection screen 143 on the touch panel 21. Theselection screen 143 includes, as shown in FIG. 18, a message 137prompting selection of a USB port to which the USB storage 47 configuredto store the scan data generated by Scan to USB function is connected, aselection button 139 for selecting the front USB port 45, and aselection button 141 for selecting the rear USB port 46. When detectingpressing of any of the selection buttons 139 and 141 in the selectionwindow 143, the CPU 12 sets the USB port corresponding to the pressedone of the selection buttons 139 and 141 as a port to be used in theScan to USB function (S105).

Next, in S107, the CPU 12 performs the Scan to USB process using the USBstorage 47 which is connected to the USB port set in S105. The CPU 12performs reading of an original using the image reading part 17, andstores generated scan data in the USB storage 47 connected to the USBport set in S105. In this instance, the CPU 12 stores the scanned datain an unencrypted manner. This is because, when the scan data is checkedby the PC 53 or the like, if the scan data is encrypted, checking cannotbe performed if the scan data is encrypted. After executing S107, theCPU 12 terminates the Scan to USB process shown in FIG. 19.

When the CPU 12 detects that the USB storage 47 is connected to only oneof the two USB ports (S101: NO), the CPU 12 executes S109. In this case,the USB storage 47 is connected to one of the front USB port 45 and therear USB port 46. The CPU 12 sets the USB port to which the USB storage47 is connected to the USB port to be used in the Scan to USB function(S109). Then, the CPU 12 performs the Scan to USB process using the USBport as set and the USB storages 47 connected thereto (S107).

In S99, the CPU 12 determines whether there are USB ports available forthe Scan to USB function. When the CPU 12 executes S99, the particularstoring function has been enabled. In addition, since the MFP 1according to the present embodiment includes only two USB ports (i.e.,the front side USB port 45 and the rear side USB port 46), when one ofthe two USB ports is used as a dedicated port for a particular storagefunction, there remains only one USB port that can be used for anotherfunction (e.g., the Scan to USB function). Therefore, in S99, the CPU 12can determine whether there is a USB port that can be used in the Scanto USB function by determining whether the USB storage 47 that can storethe scanned data is connected to the remaining USB port. The USB storage47 capable of storing the scan data is not a device other than a storagedevice such as a keyboard, but is a storage device having a storagecapacity capable of storing the scan data.

In S99, the CPU 12 makes an affirmative determination when the CPU 12detects that the USB storage 47 capable of storing the scanned data isconnected to the remaining USB port (S99: YES). In S99, the CPU 12 makesa negative determination when the USB storage 47 is not connected to theremaining USB port or when a device other than a storage device such asa keyboard is connected to the remaining port. When the CPU 12 makes anaffirmative determination in S99 (S99: YES), the CPU 12 sets the usableUSB port, i.e., the remaining USB port described above, to the USB portto be used in the Scan to USB function (S109). Then, the CPU 12 performsthe Scan to USB function (S107).

On the other hand, when a negative determination is made in S99 (S99:NO), the CPU 12 displays the error screen 131 in S95 (see FIG. 17). Inthis manner, the CPU 12 can execute the Scan to USB process according tothe setting of the particular storing function and the connection statusof the USB storage 47.

It is noted that the MFP 1 is an example of an image forming apparatus.The CPU 12 is an example of a controller. The RAM 13 is an example of astorage device. The touch panel 21 is an example of an authenticationinformation receiving device. The network I/F 24 is an example of afirst interface. The front side USB I/F 26, the rear side USB I/F 27,the front side USB port 45 and the rear side USB port 46 are examples ofsecond interfaces. The USB storage 47 is an example of a portablestorage device. The print job 61 is an example of an image forming job.The image data 73 and 74 are examples of image forming data.

8. Effects

According to the embodiment described above, the following effects areobtained.

(1) The CPU 12 of the MFP 1 according to the present embodiment isconfigured to perform following processes.

A. A process in S11 (an example of a receiving process) to receive anoperation of enabling or disabling the particular storing function tostore the image data 74 related to the print job 61 received through thenetwork interface 24,B. A process in S29 (an example of an enabling process) of enabling theparticular storing function in response to receipt of an operation ofenabling the particular storing function (S11: YES).C. A process in S35 (an example of a disabling process) of disabling theparticular storing function in response to receipt of an operation ofdisabling the particular storing function (S11: NO).D. A process in S54 (an example of a first storing process) of storingthe image data 75 related to the received print job 61 in the USBstorage 47 connected to the rear side USB port 46 when the CPU 12receives the print job 61 through the network interface 24 in a statewhere the particular storing process is enabled in S29.E. Processes in S85 and S79 (an example of a first image formingprocess) of forming an image using the printing part 16 in accordancewith the image data 46 stored in the USB storage 47 in S54.F. A process in S107 (an example of a communicating process) oftransmitting, to the USB storage 47 connected to the rear side USB port46, and/or retrieving, from the USB storage 47 connected to the rearside USB port 46, (i.e., at least one of transmitting and retrieving)data (e.g., data related to the USB to Scan function, the Direct Printfunction and the like) different from the image data related to theprint job received through the network interface 24 in a state where theparticular storing process is disabled in S35.

According to the above configuration, when the particular storingfunction is enabled, the CPU 12 stores, in the USB storage 47, and/orretrieves, from the USB storage 47, the image data 74 related to theprint job 61 received through the network I/F24 by the communicationwith the USB storage 47 through the rear side USB port 46. The CPU 12performs printing using the printing part 16 in accordance with theimage data 74 which is stored in the USB storage 47. On the other hand,when the particular storing function is disabled, the CPU 12 stores, inthe USB storage 47, and/or retrieves, from the USB storage 47, the datadifferent from the image data 74 related to the print job 61, which isreceived through the network I/F24, through the rear side USB port 46.Therefore, by switching enabled state/disabled state of the particularstoring function, the user can change the type of data stored in and/orretrieved from the USB storage 47 through the rear side USB port 46among the image data 74 of the print job 61 or other types of data(e.g., the image data for the SUB to Scan function). Accordingly, such aconfiguration could enhance convenience in performing data communicationwith the USB storage 47.

(2) The MFP 1 is further provided with the touch panel 21 (an example ofan authentication information receiving part) through which the CPU 12receives the authentication information. The CPU 12 executes theprocesses of S85 and S79 in response to successful authentication (S61:YES) based on the authentication data (e.g., a user name and a password)received through the touch panel 21. According to the aboveconfiguration, the CPU 12 stores the image data 74 in the USB storage 47and then executes the authentication using the touch panel 21. When theCPU 12 succeeds in authenticating, the CPU 12 performs the imageformation in accordance with the stored image data 74. As a result, itis possible to suppress a case where printed matter on which the imageis formed is delivered to a user other than the user who has requestedthe image formation.

(3) When the CPU 12 receives an operation of enabling the particularstoring function (S11: YES), the CPU 12 executes the process of S26 (anexample of a storage capacity determining process) for determiningwhether or not the storage capacity of the USB storage 47 is equal to orlarger than the particular storage capacity. Further, when it isdetermined that the storage capacity of the USB storage 47 is less thanthe particular storage capacity as a result of the process in S26 (S26:NO), the CPU 12 executes the process in S28 (an example of anotification process) to notify an error without enabling the particularstoring function.

In a case where the storage capacity of the USB storage 47 is small,when the data amount of the image data 74 to be stored in the USBstorage 47 increases, there is a possibility that the image data 74cannot be stored in the USB storage 47. On the other hand, when thestorage capacity of the USB storage 47 is small, the number of times ofwriting or reading per unit storage area of the USB storage 47increases, and the possibility of causing a disorder of the USB storage47 increases. Therefore, prior to enabling the particular storingfunction, the CPU 12 determines whether or not the storage capacity ofthe USB storage 47 is equal to or greater than a particular storagecapacity. When the storage capacity is less than the particular storagecapacity, the CPU 12 notifies an error without enabling the particularstoring function. As a result, the user is caused to recognize thatthere is not enough storage capacity to enable the particular storingfunction, and is prompted that appropriate measures (e.g., replacementof the USB storage 47) should be taken.

(4) The CPU 12 stores the image data 74 in the USB storage 47 in anencrypted manner in S54, while the CPU 12 stores, in the USB storage 47,and/or retrieves, from the USB storage 47, the image data (e.g., scandata) other than the image data 74 in unencrypted manner. According tosuch a configuration, by encrypting the image data 74 to be stored inthe USB storage 47 with encryption, if the USB storage 47 is detachedfrom the MFP 1 and then lost, it is difficult for a third party to readthe image data 47 stored in the USB storage 47. That is, the security ofthe image data 74 stored in the USB storage 47 can be enhanced byencrypting the image data 74. On the other hand, by not encrypting thedata stored in and/or read from the USB storage 47 when the particularstoring function is disabled, a load to the CPU 12 when a communicatingprocess is performed can be reduced.

(5) Further, in response to the CPU 12 receiving an operation ofenabling the particular storing function (S11: YES), the CPU 12 newlygenerates (S30) a common key 78 (an example of an encryption key) usedfor encrypting the image data 74 in the process of S54. According tothis configuration, it becomes difficult to read the image data 74 incomparison with a case where the same encryption key is usedcontinuously, and leakage of information can be prevented.

(6) The MFP 1 is further includes a RAM 13. In a case where theparticular storing function is disabled in S35, when receiving the printjob 61 through the network I/F 24, the CPU 12 performs a process in S49(an example of a second storing process) of storing the image datarelated to the received print job 61 in the RAM 13, a process in S79 (anexample of a second image forming process) of forming an image with useof the printing part 16 in accordance with the image data 73 stored inthe RAM 13 in S49, a process in S21 (an example of a first deletingprocess) of deleting the image data 74 stored in the RAM 13 when anoperation of enabling the particular storing function is received (S11:YES, S15: YES) in a state where the image data 74 is stored in the RAM13 by the process in S49.

According to the above configuration, when the particular storingfunction is enabled in a state where the image data 73 that has not hasnot been printed in S79 is stored in the RAM 13, the CPU 12 deletes theimage data 73 from the RAM 13. Since the CPU 12 deletes the image data73 in RAM 13, the CPU 12 does not need to manage the image data 73 inthe RAM 13 after enabling the particular storing function and only needsto manage the image data 74 to be stored in the USB storage 47. As aresult, a load to the CPU 12 for managing the image data 73 and 74 canbe reduced.

(7) In a state where the image data 74 related to the print job 61received in S54 is stored in the USB storage 47, when the CPU 12receives the operation of disabling the particular storing function(S11: NO), the CPU 12 performs the process in S34 (an example of asecond deleting process) of deleting the image data 74 stored in the USBstorage 47. According to this configuration, when the particular storingfunction is disabled in the state where the image data 74 which has notbeen subjected to the printing process in S79 is being stored in the USBstorage 47, the image data 74 is deleted from the USB storage 47. Sincethe image data 74 in the USB storage 47 is deleted, the CPU 12 does notneed to manage the image data 74 in the USB storage 37 after theparticular storing function is disabled. As a result, a load to the CPU12 regarding management of the image data 73 and 74 is reduced.

(8) The MFP 1 has a plurality of USB ports (i.e., the front side USBport 45 and the rear side USB port 46). In the process of S11, the CPU12 receives the operation of selecting a USB port to which the USBstorage 47 to store the image data 47 related to the received pint job61 from among the plurality of USB ports (see FIG. 3), and in theprocess of S54, the CPU 12 stores the image data 74 in the USB storage47 which is connected to the USB port selected in S11. According to theabove configuration, the CPU 12 receives a selection of the USB port towhich the USB storage for storing the image data 74 is to be stored.Therefore, the user can change the USB port to which the USB storage forstoring the image data 74 depending on an installation state of the MFP1. For example, when the MFP 1 installed with its rear side beingclosely faced to a wall, it is difficult to connect the USB storage 47to the rear side USB port 46. In such a case, by setting the front sideUSB port 45 as the USB port to be used for the particular storingfunction, the USB storage can be connected to the USB port 45 and theimage data 74 can be stored in the USB storage 47.

(9) The MFP 1 has the printing part 16, as an image forming part, whichis configured to print an image in accordance with the image data 73 and74. When the DirectPrint function is performed, the CPU 12 retrieves theimage data (i.e., print data) from the USB storage 47 connected to therear side USB port 46, and performs printing, with use of the printingpart 16, in accordance with the retrieved image data. According to thisconfiguration, when the particular storing function is disabled, the CPU12 performs printing in accordance with the image data retrieved fromthe USB storage 47 connected to the rear side USB port 46. In otherwords, the user can perform printing by disabling the particular storingfunction and connecting the USB storage 47 storing the image data to therear side USB port 46.

(10) The MFP 1 has, as an image generating part, the image reading part17 configured to read an image on an original and generate image data.The CPU 12 is configured to perform data communication with the USBstorage 47. In particular, the CPU 12 transmits the image data (scandata) generated by the image reading part 17 to the USB storage 47connected to the rear side USB port 46 in the process of S107 and storesthe same therein. According to this configuration, when the particularstoring function is disabled, the CPU 12 stores the image data which isread by the image reading part 17 in the USB storage 47. Thus, simply bydisabling the particular storing function, connecting the USB storage 47to the rear side USB port 46 and performing the image reading with useof the image reading part 17, the user can store the image datarepresenting the read image in the USB storage 47.

(11) As the second I/F, a USB I/F configured to store and/or retrieve(i.e., at least one of store and retrieve) the image data 74 inaccordance with the USB (Universal Serial Bus) standard may be employed.According to such a configuration, portable storage devices (e.g., a USBmemory, a USB-connected hard disk drive and the like) that is widely andgenerally used can be employed as the storage device of the image data74.

9. Modifications

It is noted that aspects of the present disclosures should not belimited to the above-mentioned embodiments, but various modificationsand alterations can be made within scopes without departing from aspectsof the present disclosures. For example, the image forming job stored inthe storage device or the portable storage device should not necessarilybe limited to the print job 61, but may be the scan job instructingexecution of a scanning function, a facsimile job instructing executionof a facsimile function, or the like.

The condition triggering execution of the first image forming process inS85 and S79 should not be limited to the success of the loginauthentication. The CPU12 may execute S85 or S79 in response to, forexample, a particular button on the touch panel 21 being touched andexecute printing in accordance with the image data 74 stored in the USBstorage 47.

The method of login authentication according to the present disclosuresshould not be limited to the method using a password. An authenticationmethod using, for example, an authentication card and wirelesscommunication, or a biometric authentication method such as one using afingerprint may be used. The MFP 1 may determine whether to allowlogging based on data received from a mobile terminal. The user mayenter usernames and/or password on the mobile terminal, and transmitthem to the MFP 1, thereby the login operation being performed.

It is noted that the CPU 12 is configured to delete the image data 73 inthe RAM 13 (S21) when the particular storing function is enabled.However, the CPU 12 may be configured no to delete the image data 73 inthe RAM 13. Instead, the CPU 12 may be configured to move the image data73 in the RAM 13 to the USB storage 47 and manage the image data 73together with the image data 74.

In S27, the CPU 12 deletes the data in the USB storage 47 when theparticular storing function is enabled. However, the data need not bedeleted. It is noted that the CPU 12 may store the image data 74 and/orthe list data 77 in a free space of the USB storage 47 with leaving thedata stored in the USB storage 47 undeleted. Alternatively, the CPU 12may move the data in the USB storage 47 to a location different from theUSB storage 47.

In addition, the CPU 12 deletes the image data 74 in the USB storage 47(S34) when the particular storage function is disabled. It is noted thatsuch a configuration may be modified. That is, the CPU 12 may not deletethe image data 74 but move the same from the USB storage to the RAM 13and manage the image data 74 together with the image data 73.

It is noted that the CPU 12 may be configured to encrypt at least one ofthe image data 73 and the list data 76, which is to be stored in RAM 13,and/or configured not to encrypt at least one of the image data 74 andthe list data 77, which is to be stored in the USB storage 47.

In the embodiment, the CPU 12 is configured to newly generate a commonkey 78 each time the particular storing function is enabled (S30).However, the CPU 12 may be configured not to generate a new common key78 every time the particular storing function is enabled, but use thesame common key 78. Alternatively, the CPU 12 may be configured to useone of a plurality of common keys 78 by rotating the same each time aparticular storage function is enabled.

In the embodiment, when the storage capacity of the USB storage 47 isless than the particular storage capacity, the CPU 12 notifies an errorwithout enabling the particular storing function (S28). Theconfiguration may be modified such that the function may be enabledregardless of the storage capacity.

It is noted that the image forming part according to the aspects of thedisclosures should not be limited to the printing part 16, but may beany other apparatuses configured to form images such as the imagereading part 17 or the FAX I/F 18.

Then MFP 1 may be configured to have only one USB port, or three or moreUSB ports. In this instance, in the process of S11, the CPU 12 maydisplay selection buttons for selecting three or more USB ports on thesetting window 81 shown in FIG. 3 to receive an operation to select oneof the plurality of the USB ports.

Similarly, in the process of S103, the CPU 12 may display selectionbuttons for selecting three or more USB ports on the selection window143 shown in FIG. 18 to receive an operation to select one of theplurality of the USB ports. Further, in the process of S99, the CPU 12may sequentially determine whether or not the USB storage 47 isconnected to a plurality of USB ports other than the USB ports used inthe particular storing function.

Further, the CPU 12 may be configured to set a plurality of USB ports tobe used in the particular storing function. In this case, the CPU 12 maydetermine, in the process of S22, whether the USB storages 47 areconnected to all of the plurality of USB ports set to be used for theparticular storage function. In such a case, the CPU 12 may beconfigured to make an affirmative determination (S22: YES) when the USBstorage is connected to at least one of the plurality of USB ports.

In the above embodiment, the CPU 12 which is configured to execute aprogram indicated below as a controller. Aspects of the presentdisclosures do not need to be limited to such a configuration. Forexample, the controller may be configured by dedicated hardware such asan ASIC (Application Specific Integrated Circuit). Alternatively, thecontroller may be realized by, for example, processes performed bysoftware and processes performed by hardware in combination.

In the above embodiment, the MFP 1 is employed as image forming deviceaccording to aspects of the present disclosures. However, theconfiguration according to aspects of the present disclosures should notbe limited to the above-described one. The image forming apparatusaccording to the present disclosures may include, for example, a printerhaving only a printing function.

What is claimed is:
 1. An image forming apparatus, comprising: an imageforming part; a first interface; a second interface to which a portablestorage device is connectable; and a controller, wherein the controlleris configured to perform: a receiving process of receiving an operationof one of enabling and disabling a particular storing function which isa function to store image forming data related to an image forming jobreceived through the first interface in the portable storage; anenabling process of enabling the particular storing function in responseto the controller receiving the operation of enabling the particularstoring function in the receiving process; a disabling process ofdisabling the particular storing function in response to the controllerreceiving the operation of disabling the particular storing function inthe receiving process; in response to receipt of the image forming jobthrough the first interface in a state where the particular storingfunction is enabled in the enabling process, a first storing process ofstoring the image forming data related to the received image forming jobin the portable storage device connected to the second interface; afirst image forming process of forming an image with the image formingpart in accordance with the image forming data stored in the portablestorage in the first storing process; a communicating process of atleast one of storing, in the portable storage device connected to thesecond interface, and retrieving, from the portable storage deviceconnected to the second interface, data different from the image formingdata related to the image forming job, which is received through thefirst interface, in a state where the particular storing function isdisabled in the disabling process.